package de.fhd.pms.model;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.apache.log4j.Logger;

import de.fhd.pms.dao.AutomobilDao;
//DOKUMENTATION FERTIG
/**
 * Definition der Struktur eines {@link Automobil} (=Model).<br/>
 * Mithilfe dieses Model-Objekts wird die Struktur eines Automobils abgebildet.
 * Außerdem wird, ausgehend vom hier definierten Model die Tabellenstruktur in
 * der MySQL-Datenbank abgebildet.
 * <ul>
 *   <li>MySQL Tabellenname: tbl_automobil</li>
 * </ul>
 * @author Martin Schmid
 * @author Florian Schachner
 */
@Entity
@Table(name = "tbl_automobil")
public class Automobil {

	private static Logger log = Logger.getLogger(Automobil.class);

	/*
	 * SCHRITT 1: Annotationen der Klasse und der ID
	 */

	@Id
	@GeneratedValue
	@Column(name = "pk_aid")
	private Integer id;
	private Date created;
	private String kennzeichen;
	private String hersteller;
	private String modell;
	private Integer baujahr;
	private Integer leistung;
	private Integer kilometerstand;
	private Boolean available;
	private Integer aktuellerstandort;

	/*
	 * SCHRITT 2: GETTER- UND SETTER-METHODEN Mithilfe der Getter- und
	 * Setter-Methoden kann diese Entity mit Daten aus der Datenbank gefüllt
	 * werden (Setter) und Daten in die Datenbank zurückgeschrieben werden
	 * (Getter).
	 */

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public Date getCreated() {
		return created;
	}

	public void setCreated(Date created) {
		this.created = created;
	}

	public String getKennzeichen() {
		return kennzeichen;
	}

	public void setKennzeichen(String kennzeichen) {
		this.kennzeichen = kennzeichen;
	}

	public String getHersteller() {
		return hersteller;
	}

	public void setHersteller(String hersteller) {
		this.hersteller = hersteller;
	}

	public String getModell() {
		return modell;
	}

	public void setModell(String modell) {
		this.modell = modell;
	}

	public Integer getBaujahr() {
		return baujahr;
	}

	public void setBaujahr(Integer baujahr) {
		this.baujahr = baujahr;
	}

	public Integer getLeistung() {
		return leistung;
	}

	public void setLeistung(Integer leistung) {
		this.leistung = leistung;
	}

	public Integer getKilometerstand() {
		return kilometerstand;
	}

	public void setKilometerstand(Integer kilometerstand) {
		this.kilometerstand = kilometerstand;
	}

	public Boolean getAvailable() {
		return available;
	}

	public void setAvailable(Boolean available) {
		this.available = available;
	}

	public Integer getAktuellerstandort() {
		return aktuellerstandort;
	}

	public void setAktuellerstandort(Integer aktuellerstandort) {
		this.aktuellerstandort = aktuellerstandort;
	}

}
